package it.csi.finregio.finreges.junit.integration;

import it.crp.exception.ServiceException;
import it.csi.finregio.finreges.dto.Classificazione;
import it.csi.finregio.finreges.dto.Direzione;
import it.csi.finregio.finreges.dto.Ente;
import it.csi.finregio.finreges.dto.Settore;
import it.csi.finregio.finreges.dto.TipoRiferimento;

import java.util.Collection;
import java.util.Iterator;

import junit.framework.TestCase;

public class FinregioServiceTest extends TestCase {

	public void testGetListaClassificazioni() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaClassificazioni() ");
		JUnitFinregioService service = getService();
		try {
			Collection collection = service.getListaClassificazioni();
			System.out.println(collection);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out
				.println("FinregioServiceTest.testGetListaClassificazioni() =====");
	}

	private JUnitFinregioService getService() {
		JUnitFinregioService service = new JUnitFinregioService();
		return service;
	}

	public void testGetListaSottoclassificazioniByClassificazione()
			throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaSottoclassificazioniByClassificazione() ");
		Collection classificazioni = getService().getListaClassificazioni();
		for (Iterator iterator = classificazioni.iterator(); iterator.hasNext();) {
			Classificazione classificazione = (Classificazione) iterator.next();

			Collection c = getService()
					.getListaSottoclassificazioniByClassificazione(
							classificazione);
			System.out.println(c);
		}
		System.out
				.println("FinregioServiceTest.testGetListaSottoclassificazioniByClassificazione() =====");
	}

	public void testGetListaDirezioniByEnte() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaDirezioniByEnte() ");
		Collection enti = getService().getListaEnti();
		for (Iterator iterator = enti.iterator(); iterator.hasNext();) {
			Ente ente = (Ente) iterator.next();

			Collection c = getService().getListaDirezioniByEnte(ente);
			System.out.println(c);
		}
		System.out
				.println("FinregioServiceTest.testGetListaDirezioniByEnte() =====");
	}

	public void testGetListaSettoriByEnte() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaSettoriByEnte() ");
		Collection enti = getService().getListaEnti();
		for (Iterator iterator = enti.iterator(); iterator.hasNext();) {
			Ente ente = (Ente) iterator.next();

			Collection c = getService().getListaSettoriByEnte(ente);
			System.out.println(c);
		}
		System.out
				.println("FinregioServiceTest.testGetListaSettoriByEnte() =====");
	}

	public void testGetListaSettoriByDirezione() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaSettoriByDirezione() ");
		Collection direzioni = getService().getListaDirezioni();
		for (Iterator iterator = direzioni.iterator(); iterator.hasNext();) {
			Direzione direzione = (Direzione) iterator.next();

			Collection c = getService().getListaSettoriByDirezione(direzione);
			System.out.println(c);
		}
		System.out
				.println("FinregioServiceTest.testGetListaSettoriByDirezione() =====");
	}

	public void testGetListaSottoclassificazioni() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaSottoclassificazioni() ");
		Collection c = getService().getListaSottoclassificazioni();
		System.out.println(c);
		System.out
				.println("FinregioServiceTest.testGetListaSottoclassificazioni() =====");
	}

	public void testGetListaEnti() throws ServiceException {
		System.out.println("====== FinregioServiceTest.testGetListaEnti() ");
		Collection c = getService().getListaEnti();
		System.out.println(c);
		System.out.println("FinregioServiceTest.testGetListaEnti() =====");
	}

	public void testGetListaAltriEnti() throws ServiceException {
		System.out.println("====== FinregioServiceTest.testGetListaEnti() ");
		Collection c = getService().getListaAltriEnti();
		System.out.println(c);
		System.out.println("FinregioServiceTest.testGetListaEnti() =====");
	}

	public void testGetListaDirezioni() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaDirezioni() ");
		Collection c = getService().getListaDirezioni();
		System.out.println(c);
		System.out.println("FinregioServiceTest.testGetListaDirezioni() =====");
	}

	public void testGetListaSettori() throws ServiceException {
		System.out.println("====== FinregioServiceTest.testGetListaSettori() ");
		Collection c = getService().getListaSettori();
		System.out.println(c);
		System.out.println("FinregioServiceTest.testGetListaSettori() =====");
	}

	public void testGetListaTipoRif() throws ServiceException {
		System.out.println("====== FinregioServiceTest.testGetListaTipoRif() ");
		Collection c = getService().getListaTipoRiferimento();
		System.out.println(c);
		System.out.println("FinregioServiceTest.testGetListaTipoRif() =====");
	}

	public void testGetListaStatoScheda() throws ServiceException {
		System.out
				.println("====== FinregioServiceTest.testGetListaStatoScheda() ");
		Collection c = getService().getListaStatoScheda();
		System.out.println(c);
		System.out
				.println("FinregioServiceTest.testGetListaStatoScheda() =====");
	}

	
	public void testGetDirezioneByProgressivo() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Direzione dir = s.getDirezioneByProgressivo("4");
		System.out.println(dir);
	}
	
	public void testGetSettoreByProgressivo() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Settore settore = s.getSettoreByProgressivo("4");
		System.out.println(settore);
	}
	public void testGetEnteByPk() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Ente ente = s.getEnteByPK("4");
		System.out.println(ente);
	}
	public void testGetAltroEnteByPk() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Ente ente = s.getAltroEnteByPK("16");
		System.out.println(ente);
	}
	public void testGetTipoRiferimentoById() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		TipoRiferimento tr = s.getTipoRiferimentoById("1");
		System.out.println(tr);
	}
	public void testGetListaCompletaEnti() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Collection tr = s.getListaCompletaEnti();
		System.out.println(tr);
	}
	
	public void testGetListaAnni() throws ServiceException{
		JUnitFinregioService s = new JUnitFinregioService();
		Collection tr = s.getListaAnni();
		System.out.println(tr);
	}
	

}
